package com.swotplus.system.sys.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 用户信息表
 * </p>
 *
 * @author hugang
 * @since 2020-04-12
 */
@TableName("sys_user")
public class SysUser implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 用户ID
     */
	private String id;
    /**
     * 部门ID
     */
	private String deptId;
    /**
     * 登录账号
     */
	private String loginName;
    /**
     * 用户昵称
     */
	private String userName;
    /**
     * 用户类型（00系统用户）
     */
	private String userType;
    /**
     * 用户邮箱
     */
	private String email;
    /**
     * 手机号码
     */
	private String phonenumber;
    /**
     * 用户性别（0男 1女 2未知）
     */
	private String sex;
    /**
     * 头像路径
     */
	private String avatar;
    /**
     * 密码
     */
	private String password;
    /**
     * 盐加密
     */
	private String salt;
    /**
     * 帐号状态（0正常 1停用）
     */
	private String status;
    /**
     * 删除标志（0代表存在 2代表删除）
     */
	private String delFlag;
    /**
     * 最后登陆IP
     */
	private String loginIp;
    /**
     * 最后登陆时间
     */
	private LocalDateTime loginDate;
    /**
     * 创建者
     */
	private String createBy;
    /**
     * 创建时间
     */
	@TableField(fill = FieldFill.INSERT)
	private LocalDateTime createTime;
    /**
     * 更新者
     */
	private String updateBy;
    /**
     * 更新时间
     */
	@TableField(fill = FieldFill.INSERT_UPDATE)
	private LocalDateTime updateTime;
    /**
     * 备注
     */
	private String remark;

	public String[] getPostIds() {
		return postIds;
	}

	public void setPostIds(String[] postIds) {
		this.postIds = postIds;
	}

	public String[] getRoleIds() {
		return roleIds;
	}

	public void setRoleIds(String[] roleIds) {
		this.roleIds = roleIds;
	}

	@TableField(exist = false)
	private String[] postIds;
	@TableField(exist = false)
	private  String[] roleIds;


	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public String getDeptId() {
		return deptId;
	}

	public void setDeptId(String deptId) {
		this.deptId = deptId;
	}

	public String getLoginName() {
		return loginName;
	}

	public void setLoginName(String loginName) {
		this.loginName = loginName;
	}

	public String getUserName() {
		return userName;
	}

	public void setUserName(String userName) {
		this.userName = userName;
	}

	public String getUserType() {
		return userType;
	}

	public void setUserType(String userType) {
		this.userType = userType;
	}

	public String getEmail() {
		return email;
	}

	public void setEmail(String email) {
		this.email = email;
	}

	public String getPhonenumber() {
		return phonenumber;
	}

	public void setPhonenumber(String phonenumber) {
		this.phonenumber = phonenumber;
	}

	public String getSex() {
		return sex;
	}

	public void setSex(String sex) {
		this.sex = sex;
	}

	public String getAvatar() {
		return avatar;
	}

	public void setAvatar(String avatar) {
		this.avatar = avatar;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public String getSalt() {
		return salt;
	}

	public void setSalt(String salt) {
		this.salt = salt;
	}

	public String getStatus() {
		return status;
	}

	public void setStatus(String status) {
		this.status = status;
	}

	public String getDelFlag() {
		return delFlag;
	}

	public void setDelFlag(String delFlag) {
		this.delFlag = delFlag;
	}

	public String getLoginIp() {
		return loginIp;
	}

	public void setLoginIp(String loginIp) {
		this.loginIp = loginIp;
	}

	public LocalDateTime getLoginDate() {
		return loginDate;
	}

	public void setLoginDate(LocalDateTime loginDate) {
		this.loginDate = loginDate;
	}

	public String getCreateBy() {
		return createBy;
	}

	public void setCreateBy(String createBy) {
		this.createBy = createBy;
	}

	public LocalDateTime getCreateTime() {
		return createTime;
	}

	public void setCreateTime(LocalDateTime createTime) {
		this.createTime = createTime;
	}

	public String getUpdateBy() {
		return updateBy;
	}

	public void setUpdateBy(String updateBy) {
		this.updateBy = updateBy;
	}

	public LocalDateTime getUpdateTime() {
		return updateTime;
	}

	public void setUpdateTime(LocalDateTime updateTime) {
		this.updateTime = updateTime;
	}

	public String getRemark() {
		return remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

	@Override
	public String toString() {
		return "SysUser{" +
			", id=" + id +
			", deptId=" + deptId +
			", loginName=" + loginName +
			", userName=" + userName +
			", userType=" + userType +
			", email=" + email +
			", phonenumber=" + phonenumber +
			", sex=" + sex +
			", avatar=" + avatar +
			", password=" + password +
			", salt=" + salt +
			", status=" + status +
			", delFlag=" + delFlag +
			", loginIp=" + loginIp +
			", loginDate=" + loginDate +
			", createBy=" + createBy +
			", createTime=" + createTime +
			", updateBy=" + updateBy +
			", updateTime=" + updateTime +
			", remark=" + remark +
			"}";
	}
}
